package com.xbongbong.paas.pojo.dto;

import com.xbongbong.paas.toolbox.wrap.BaseDTO;
import com.xbongbong.paas.toolbox.wrap.QueryIgnore;
import lombok.Getter;
import lombok.Setter;
import lombok.ToString;
import org.hibernate.validator.constraints.Length;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;

@Setter
@Getter
@ToString
public class MenuFormCopyDTO extends BaseDTO {

    private static final long serialVersionUID = -1073231930280340759L;
    /**
     * 应用id
     */
    @NotNull(message = "{dto.msg.menuFormAdd.appId.NotNull}")
    private Long appId;

    /**
     * 分组名称
     */
    @NotBlank(message = "{dto.msg.menuFormAdd.name.NotBlank}")
    @Length(max = 50, message = "{dto.msg.menuFormCopy.name.Length}")
    private String name;

    /**
     * saas和paas
     * @see com.xbongbong.pro.enums.SaasMarkEnum
     */
    @Getter(onMethod_ = {@QueryIgnore})
    private Integer saasMark;
    /**
     * 业务标识
     * @see com.xbongbong.saas.enums.XbbRefTypeEnum
     */
    @NotNull(message = "{dto.msg.appMenuFormId.businessType.NotNull}")
    @Getter(onMethod_ = {@QueryIgnore})
    private Integer businessType;


    /**
     * 业务标识
     * @see com.xbongbong.saas.enums.XbbRefTypeEnum
     */
    @Getter(onMethod_ = {@QueryIgnore})
    private String alias;


    /**
     * 复制源表单id
     */
    @NotNull(message = "{dto.msg.formId.NotNull}")
    private Long formId;

}
